The present disclosure relates generally to enterprise data management and more specifically to enterprise decision management.
The general environment of decision management comprises decision making tools and change detection tools for providing a rules management system that is easy to evolve, trace, audit, and test.
In decision management environments, users capture business statements using a controlled natural language (CNL). For instance, they capture business rules, business event processing rules or queries, using dedicated business-centric domain specific languages (DSL) that combine ease of use of natural language and the level of formalism required to capture statements that need to be unambiguously executed by a machine.
A controlled natural language is a subset of natural language obtained by restricting the grammar and the vocabulary used, in order to reduce ambiguity and complexity. A system can guide a user through type-ahead suggestions consistent with a CNL. Terms and phrases defined by the user to represent a business domain are part of a CNL. A set of terms and phrases manipulated in a CNL is known as a business vocabulary. Although a business vocabulary is usually defined by the business users who also use business-centric controlled languages, frequently a user would like to use some terminology that does not exist in this vocabulary. Further information about a business vocabulary can be found in the Business Vocabulary and Rules (SBVR) standard as defined by the Object Management Group (OMG), a not-for-profit computer industry standards consortium.
An example is the case where a user needs to set-up a new promotion rule for an e-commerce business and needs to refer to some concept property not yet exposed in the business vocabulary. The user may also want to refer to a specific concept that does not exist. This new element of terminology could represent a completely new piece of data or a new computation of some existing elements. In both cases, the vocabulary needs to be updated to propose the new terminology and allow its usage in the controlled language.
In existing systems, business statement authoring tools are usually decoupled and provided in separate environments, sometimes addressing different kind of users. As a consequence, while capturing a business statement using a controlled language, the user has to go to the business vocabulary authoring environment to add the terminology element he would like to manipulate, before coming back to the statement authoring environment to continue editing his statement. This induces a significant context switch which has a negative impact on the user productivity and increases the risk of introducing errors.
Another issue is that the formalism to capture business vocabulary is usually different from the one used to capture business statements with a controlled language. Techniques and tools used to author a business vocabulary usually relies on dedicated form-based or graphical user interfaces (GUI) similar to the one used to capture object models in modern modeling software.
As a consequence, the user has to switch from a text-based authoring paradigm that characterize tools using controlled languages to a more graphical dedicated user interface, increasing the context switch effect described before.